﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace RelationExpertSystem
{
    class BackwardChainer
    {
        public void BackwardChain()
        {
            // step 0: build a rule IF...THEN implication graph
            // - must encapsulate IF condition and THEN conditions as objects
            //   - IF A and B and C, THEN D
            // step 1: build a family tree with known facts
            // step 2: parse user query for key points
            // "Is Luke Tony's cousin?"
            // "Who are Luke's cousins?"
            // "Who are whose cousins?"
            // step 3: use Dijkstra's algorithm to find shortest path from GOAL to FACT
            // step 4: ask questions to plug in conditions for each rule in tree
        }
    }
}
